package com.wxdc.nmgyt.nmgytwydc.dagger.component;

import com.wxdc.nmgyt.nmgytwydc.app.MyApp;
import com.wxdc.nmgyt.nmgytwydc.dagger.module.AppModule;
import com.wxdc.nmgyt.nmgytwydc.dagger.module.HttpModule;
import com.wxdc.nmgyt.nmgytwydc.http.RetrofitHelper;

import javax.inject.Singleton;

import dagger.Component;

/**
 * Created by Administrator on 2018/4/20.
 * Component中返回值不为void且无参的方法，方法名是无所谓的，返回值是最重要的代表的是暴露给子Component使用的依赖或者是获取的子Component的类型
 */
@Singleton
@Component(modules = {AppModule.class, HttpModule.class})
public interface AppComponent {
    //依赖于当前component的component会得到MyApp实例，这里的方法名不固定
    MyApp getContext(); //提供App的Context
    RetrofitHelper retrofitHelper();  //提供http的帮助类
    //RealmHelper realmHelper();    //提供数据库帮助类
}
